function cmd(doc, order, param, handelSet) {
  if (!doc || typeof doc != "object") {
    console.warn("Syntax Err: doc is not a Object.");
    return false;
  }
  if (!order || typeof order != "string") {
    console.warn("Syntax Err: name is not a String.");
    return false;
  }
  if (!param) param = null;
  if (!handelSet) handelSet = false;
  doc.execCommand(order, handelSet, param);
}

/* 字典 */
var _COMMANDS_ = [
  /* 文本常规，通用操作   */
  "Copy", // 复制
  "Cut", // 剪切
  "paste", // 粘贴
  "delete", // 删除
  "undo", // 撤销
  "redo", // 重做
  "selectAll", // 全选
  "Unselect", // 取消选择
  "Refresh", // 刷新
  "Stop", // 停止。
  "SaveAs", // 另存为
  "Print", // 打印
  /* 光标相关   */
  "forwardDelete", // 删除光标所在字符（同按键行为）
  "insertText", // 于光标所在 插入/覆盖所选 字符
  "insertImage", // 于插入点插入一张图片（删除选中的部分）第三个参数为url 必要
  /* 特殊的   */
  "Open", // 相当于单击文件中的打开按钮
  "ClearAuthenticationCache", // 清除缓存中的所有身份验证凭据
  /* 编辑器设置   */
  "backColor", // 文档背景颜色
  "contentReadOnly", // 文档只读属性
  "MultipleSelection", // 允许当用户按住 Shift 或 Ctrl 键时一次选中多于一个站点可选元素。
  "OverWrite", // 切换文本状态的插入和覆盖（相当于键盘上的 INS）
  "LiveResize", // 迫使 MSHTML 编辑器在缩放或移动过程中持续更新元素外观，而不是只在移动或缩放完成后更新。
  "enableAbsolutePositionEditor", // 绝对定位元素 抓取器开关
  "enableInlineTableEditing", // 启用或禁用表格行和列插入和删除控件
  "enableObjectResizing", // 启用或禁用图像和其他对象的大小可调整大小手柄
  /* 格式化   */
  "formatBlock", // 用html标签格式化当前选择行。若已存在则替换（Firefox 中 BLOCKQUOTE 是例外）。最后一个参数为标签名（IE需要用<>进行包裹）
  "removeFormat", // 对所选内容去除所有格式
  "defaultParagraphSeparator", // 更改在可编辑文本区域中创建新段落时使用的段落分隔符。
  "insertBrOnReturn", // 控制当按下Enter键时，是插入 br 标签还是把当前块元素变成两个。(IE浏览器不支持)
  /* 布局与对齐   */
  "justifyLeft", // 居左
  "justifyCenter", // 居中
  "justifyRight", // 居右
  "justifyFull", // 两端对齐
  "insertOrderedList", // 在插入点或者选中文字上创建一个有序列表
  "insertUnorderedList", // 在插入点或者选中文字上创建一个无序列表。
  "indent", // 缩进选择或插入点所在的行， 在 Firefox 中如果选择多行，但是这些行存在不同级别的缩进只有缩进最少的行被缩进。
  "outdent", // 对光标插入行或者所选行内容减少缩进量。
  "insertParagraph", // 在选择或当前行周围插入一个段落。(IE会在插入点插入一个段落并删除选中的部分.)
  "insertHorizontalRule", // 在插入点插入一个水平线（删除选中的部分） 最后一个参数为颜色
  "insertHTML", // 在插入点插入一个HTML字符串（删除选中的部分）。需要一个个HTML字符串作为参数。(IE浏览器不支持)
  "2D-Position", // 允许通过拖曳移动绝对定位的对象。
  "AbsolutePosition", // 设定元素的css position:absolute
  /* 文字相关   */
  "heading", // 添加一个标题标签在光标处或者所选文字上。 需要提供标签名称字符串作为参数 (例如. "H1""H6"). (IE 和 Safari不支持)
  "fontSize", // 在插入点或者选中文字部分修改字体大小. 需要提供一个HTML字体尺寸 (1-7) 作为参数。
  "Bold", // 开启或关闭选中文字或插入点的粗体字效果。IE浏览器使用 <strong>标签，而不是<b>标签。
  "italic", // 在光标插入点开启或关闭斜体字。 (Internet Explorer 使用 EM 标签，而不是 I )
  "foreColor", // 在插入点或者选中文字部分修改字体颜色. 需要提供一个颜色值字符串作为参数。
  "hiliteColor", // 更改选择或插入点的背景颜色。需要一个颜色值字符串作为值参数传递。 UseCSS 必须开启此功能。(IE浏览器不支持)
  "decreaseFontSize", // 给选中文字加上 <small> 标签，或在选中点插入该标签。(IE浏览器不支持)
  "increaseFontSize", // 在选择或插入点周围添加一个BIG标签。(IE浏览器不支持)
  "fontName", // 在插入点或者选中文字部分修改字体名称. 需要提供一个字体名称字符串 (例如："Arial")作为参数。
  "strikeThrough", // 在光标插入点开启或关闭删除线。
  "underline", // 在光标插入点开启或关闭下划线。
  "subscript", // 在光标插入点开启或关闭下角标。
  "superscript", // 在光标插入点开启或关闭上角标。
  "CreateLink", // 将选中内容创建为一个锚链接。这个命令需要一个hrefURI字符串作为参数值传入。URI必须包含至少一个字符，例如一个空格。（浏览器会创建一个空链接）
  "unlink", // 去除所选的锚链接的<a>标签
  "CreateBookmark" // 设置指定锚点为书签
];
